<?php
/**
 * This file is part of webman.
 *
 * Licensed under The MIT License
 * For full copyright and license information, please see the MIT-LICENSE.txt
 * Redistributions of files must retain the above copyright notice.
 *
 * @author    walkor<walkor@workerman.net>
 * @copyright walkor<walkor@workerman.net>
 * @link      http://www.workerman.net/
 * @license   http://www.opensource.org/licenses/mit-license.php MIT License
 */

use support\middleware\RequestCheck;
use Webman\Route;


Route::post('/entity/get_asset_relation_shot_list', [app\controller\EntityController::class, 'getAssetRelationShotList'])->middleware(RequestCheck::class);   //获取资产关联的镜头列表
Route::post('/entity/get_asset_relation_shot_count', [app\controller\EntityController::class, 'getAssetRelationShotCount'])->middleware(RequestCheck::class);   //获取资产关联的镜头统计
Route::post('/entity/get_multiple_entity_relation_ids', [app\controller\EntityController::class, 'getMultipleEntityRelationIds'])->middleware(RequestCheck::class);   //获取多个实体的关联ids
Route::post('/entity/get_multiple_entity_relation_count', [app\controller\EntityController::class, 'getMultipleEntityRelationCount'])->middleware(RequestCheck::class); // entity 获取实体的关联统计
Route::post('/entity/get_asset_relation_shot_task_card_list', [app\controller\EntityController::class, 'getAssetRelationShotTaskCardList'])->middleware(RequestCheck::class); // 获取资产任务卡片关联的镜头列表

Route::post('/workbench/episode_detail', [app\controller\WorkbenchController::class, 'episodeDetail'])->middleware(RequestCheck::class); // 工作台 剧集封板详情
Route::post('/workbench/making_overview', [app\controller\WorkbenchController::class, 'makingOverview'])->middleware(RequestCheck::class); // 工作台 制作情况概览
Route::post('/workbench/personal_task_count', [app\controller\WorkbenchController::class, 'personalTaskCount'])->middleware(RequestCheck::class); // 工作台 个人任务统计列表
Route::post('/workbench/group_delivery_count', [app\controller\WorkbenchController::class, 'groupDeliveryCount'])->middleware(RequestCheck::class); // 部门交付情况
Route::post('/workbench/group_delivery_history_count', [app\controller\WorkbenchController::class, 'groupDeliveryCount'])->middleware(RequestCheck::class); // 部门交付情况-history
Route::post('/workbench/group_plan_done_count', [app\controller\WorkbenchController::class, 'groupPlanDoneCount'])->middleware(RequestCheck::class); // 组内完成情况
Route::post('/workbench/global_abnormal_count', [app\controller\WorkbenchController::class, 'globalAbnormalCount'])->middleware(RequestCheck::class); // 工作台 全局异常
Route::post('/workbench/episode_seal_show_list', [app\controller\WorkbenchController::class, 'episodeSealShowList'])->middleware(RequestCheck::class);   // 剧集封板播出情况列表
Route::post('/workbench/group_abnormal_add_count', [app\controller\WorkbenchController::class, 'groupAbnormalAddCount'])->middleware(RequestCheck::class); // 部门异常任务情况
Route::post('/workbench/today_abnormal_task_count', [app\controller\WorkbenchController::class, 'todayAbnormalTaskCount'])->middleware(RequestCheck::class);   // 未处理工单异常查询
Route::post('/workbench/group_upstream_delivery_count', [app\controller\WorkbenchController::class, 'groupUpstreamDeliveryCount'])->middleware(RequestCheck::class);   // 部门完成交付情况
Route::post('/workbench/group_upstream_todo_delivery_count', [app\controller\WorkbenchController::class, 'groupUpstreamTodoDeliveryCount'])->middleware(RequestCheck::class);   // 上游标准任务交付情况
Route::post('/workbench/group_abnormal_delay_task_count', [app\controller\WorkbenchController::class, 'groupAbnormalDelayTaskCount'])->middleware(RequestCheck::class);   // 延期任务数
Route::post('/workbench/group_abnormal_work_order_count', [app\controller\WorkbenchController::class, 'groupAbnormalWorkOrderCount'])->middleware(RequestCheck::class);   // 未处理工单异常查询
Route::post('/workbench/step_category_seal_episode_list', [app\controller\WorkbenchController::class, 'stepCategorySealEpisodeList'])->middleware(RequestCheck::class); // 工作台 环节封板剧集情况查询
Route::post('/workbench/step_category_inprogress_episode_list', [app\controller\WorkbenchController::class, 'stepCategoryInProgressEpisodeList'])->middleware(RequestCheck::class); // 工作台 环节进行中剧集列表
Route::post('/workbench/user_task_count', [app\controller\WorkbenchUserTaskController::class, 'taskCount'])->middleware(RequestCheck::class); // 工作台 根据用户id统计任务
Route::post('/workbench/step_category_reviewing_episode_list', [app\controller\WorkbenchController::class, 'stepCategoryReviewingEpisodeList'])->middleware(RequestCheck::class); // 工作台 环节审核中的剧集情况
Route::post('/workbench/get_task_member_count', [app\controller\WorkbenchController::class, 'getTaskMemberCount'])->middleware(RequestCheck::class); // 工作台 与我相关统计

Route::post('/project/shot_total_list', [app\controller\ProjectController::class, 'shotTotalList'])->middleware(RequestCheck::class);   //镜头统计列表
Route::post('/project/asset_total_list', [app\controller\ProjectController::class, 'assetTotalList'])->middleware(RequestCheck::class); // 资产统计列表

Route::post('/production_manage/today_count', [app\controller\ProductionManageController::class, 'todayCount'])->middleware(RequestCheck::class); // 制片管理-今日统计
Route::post('/production_manage/total_task_count', [app\controller\ProductionManageController::class, 'totalTaskCount'])->middleware(RequestCheck::class); // 制片管理-今日统计
Route::post('/production_manage/episode_task_count', [app\controller\ProductionManageController::class, 'episodeTaskCount'])->middleware(RequestCheck::class);   //获取当前月计划代办任务进度
Route::post('/production_manage/get_plan_todo_task_progress', [app\controller\ProductionManageController::class, 'getPlanTodoTaskProgress'])->middleware(RequestCheck::class); // 制片管理-今日统计
Route::post('/production_manage/progress_count', [app\controller\ProductionManageController::class, 'progressCount'])->middleware(RequestCheck::class); // 制片管理-今日统计
Route::post('/production_manage/review_feedback_count', [app\controller\ProductionManageController::class, 'reviewFeedbackCount'])->middleware(RequestCheck::class); // 制片管理-审核反馈统计

Route::post('/task/count', [app\controller\TaskController::class, 'count'])->middleware(RequestCheck::class);   //任务统计
Route::post('/task/delay_count', [app\controller\TaskController::class, 'delayCount'])->middleware(RequestCheck::class);   //任务延期统计
Route::post('/task/delay_episode_list', [app\controller\TaskController::class, 'delayEpisodeList'])->middleware(RequestCheck::class);   //任务延期剧集列表统计
Route::post('/task/get_meeting_list', [app\controller\TaskController::class, 'getMeetingList'])->middleware(RequestCheck::class); // 获取会议列表
Route::post('/task/user_count_detail', [app\controller\TaskController::class, 'userCountDetail'])->middleware(RequestCheck::class); // 用户任务统计
Route::post('/task/get_episode_seal_time', [app\controller\TaskController::class, 'getEpisodeSealTime'])->middleware(RequestCheck::class); // 获取实际封板时间
Route::post('/task/get_plan_max_end_time', [app\controller\TaskController::class, 'getPlanMaxEndTime'])->middleware(RequestCheck::class); // 获取排期最大结束时间
Route::post('/task/user_list', [app\controller\TaskController::class, 'userList'])->middleware(RequestCheck::class);   // 人员列表
Route::post('/task/my_responsible_task_list', [app\controller\TaskController::class, 'myResponsibleTaskList'])->middleware(RequestCheck::class); //我负责的任务-list
Route::post('/task/my_responsible_task_count', [app\controller\TaskController::class, 'myResponsibleTaskCount'])->middleware(RequestCheck::class); // 我负责的任务-count
Route::post('/task/get_episode_plan_seal_time', [app\controller\TaskController::class, 'getEpisodePlanSealTime'])->middleware(RequestCheck::class); // 获取剧集计划封板时间
Route::post('/task/get_episode_task_step_category_progress_data', [app\controller\TaskController::class, 'getEpisodeTaskStepCategoryProgressData'])->middleware(RequestCheck::class); // 获取该集下的任务统计
Route::post('/task/production_info_report', [app\controller\TaskController::class, 'productionInfoReport'])->middleware(RequestCheck::class); // 获取该集下的任务统计

//延期统计
Route::post('/delay_stat/get_list', [app\controller\DelayStatController::class, 'getList'])->middleware(RequestCheck::class);   //延期统计


Route::post('/task_repair/get_effected_task_info', [app\controller\TaskRepairController::class, 'getEffectedTaskInfo'])->middleware(RequestCheck::class); // 返修情况

Route::post('/work_time/get_tenant_user_statistics', [app\controller\WorkTimeController::class, 'getTenantUserStatistics'])->middleware(RequestCheck::class); // 工时报表
Route::post('/work_time/export_user_statistics', [app\controller\WorkTimeController::class, 'exportUserStatistics'])->middleware(RequestCheck::class); // 工时报表
Route::post('/work_time/get_user_work_times', [app\controller\WorkTimeController::class, 'getUserWorkTimes'])->middleware(RequestCheck::class); // 工时报表 查询用户填写的工时汇总

Route::post('/note_entity_relation/get_asset_feedback_affected_shot_count', [app\controller\NoteEntityRelationController::class, 'getAssetFeedbackAffectedShotCount'])->middleware(RequestCheck::class); // entity 获取实体的关联统计

Route::post('/user/get_project_member_role_user_ids', [app\controller\UserController::class, 'getProjectMemberRoleUserIds'])->middleware(RequestCheck::class);

Route::post('/plan/get_user_episode_entity_list', [app\controller\PlanController::class, 'getUserEpisodeEntityList'])->middleware(RequestCheck::class); // 获取指定用户剧集列表
Route::post('/plan/total_year_month_task_num_count', [app\controller\PlanController::class, 'totalYearMonthTaskNumCount'])->middleware(RequestCheck::class); // 按年月统计排期任务数量
Route::post('/plan/get_plan_step_category_entity_list', [app\controller\PlanController::class, 'getPlanStepCategoryEntityList'])->middleware(RequestCheck::class); // 获取排期剧集列表

Route::post('/task_statistics/task_statistics', [app\controller\TaskStatisticsController::class, 'taskStatistics'])->middleware(RequestCheck::class);     // 任务统计 - 统计
Route::post('/task_statistics/task_done_statistics', [app\controller\TaskStatisticsController::class, 'taskDoneStatistics'])->middleware(RequestCheck::class);     // 任务统计 - 完成.统计
Route::post('/task_statistics/task_delivery_statistics', [app\controller\TaskStatisticsController::class, 'taskDeliveryStatistics'])->middleware(RequestCheck::class); // 任务统计 - 交付.统计
Route::post('/task_statistics/task_abnormal_statistics', [app\controller\TaskStatisticsController::class, 'taskAbnormalStatistics'])->middleware(RequestCheck::class);     // 任务统计 - 统计
Route::post('/demand_order/change_count', [app\controller\DemandOrderController::class, 'changeCount'])->middleware(RequestCheck::class); // 需求单模块 - 需求变更统计
Route::post('/demand_order/count_by_stage', [app\controller\DemandOrderController::class, 'countByStage'])->middleware(RequestCheck::class); // 需求单模块 - 需求按阶段下发数据统计统计

Route::post('/bi/v2/project_list', [app\controller\BIController::class, 'projectList'])->middleware(RequestCheck::class);     // BI - 项目列表
Route::post('/bi/v2/project_man_resource_distribution', [app\controller\BIController::class, 'projectManResourceDistribution'])->middleware(RequestCheck::class);     // BI - 项目人力资源分布情况
Route::post('/bi/v2/project_detail', [app\controller\BIController::class, 'projectDetail'])->middleware(RequestCheck::class);     // BI - 项目详情
Route::post('/bi/v2/project_task_done_grouped_count', [app\controller\BIController::class, 'projectTaskDoneGroupedCount'])->middleware(RequestCheck::class);     // BI - 项目任务完成数量分组统计
Route::post('/bi/v2/project_task_submit_count_by_date', [app\controller\BIController::class, 'projectTaskSubmitCountByDate'])->middleware(RequestCheck::class);     // BI - 项目任务提交趋势
Route::post('/bi/v2/project_step_category_done_count', [app\controller\BIController::class, 'projectStepCategoryDoneCount'])->middleware(RequestCheck::class);     // BI - 项目环节产出情况
Route::post('/bi/v2/project_asset_preview_check', [app\controller\BIController::class, 'projectAssetPreviewCheck'])->middleware(RequestCheck::class);     // BI - 项目资产巡检
Route::post('/bi/v2/project_inprogress_episode', [app\controller\BIController::class, 'projectInprogressEpisode'])->middleware(RequestCheck::class);     // BI - 项目进行中剧集
Route::post('/bi/v2/demand_inc_task_analysis_result', [app\controller\BIController::class, 'demandIncTaskAnalysisResult'])->middleware(RequestCheck::class);     // BI - 排期分析------需求新增任务统计
Route::post('/bi/v2/repair_inc_task_analysis_result', [app\controller\BIController::class, 'repairIncTaskAnalysisResult'])->middleware(RequestCheck::class);     // BI - 排期分析------返修新增任务统计
Route::post('/bi/v2/cancel_task_analysis_result', [app\controller\BIController::class, 'cancelTaskAnalysisResult'])->middleware(RequestCheck::class);     // BI - 排期分析------取消废除类型任务统计
Route::post('/bi/v2/origin_task_analysis_result', [app\controller\BIController::class, 'originTaskAnalysisResult'])->middleware(RequestCheck::class);     // BI - 排期分析------原计划任务统计
Route::post('/bi/v2/delay_task_analysis_result', [app\controller\BIController::class, 'delayTaskAnalysisResult'])->middleware(RequestCheck::class);     // BI - 排期分析------延期任务统计
Route::post('/bi/v2/project_in_task_donetime_count', [app\controller\BIController::class, 'projectInTaskDoneTimeCount'])->middleware(RequestCheck::class);     // BI - 按任务原计划完成时间，统计原计划任务数量
Route::post('/bi/v2/project_meeting_and_review_count', [app\controller\BIController::class, 'projectMeetingReviewCount'])->middleware(RequestCheck::class);     // BI - 按任务原计划完成时间，统计任务会议+审核次数
Route::post('/bi/v2/project_episode_current_progress_in_time', [app\controller\BIController::class, 'projectEpisodeCurrentProgressInTime'])->middleware(RequestCheck::class);     // BI - 按任务原计划完成时间，统计单集任务进度
Route::post('/bi/v2/project_episode_current_progress_in_step_item', [app\controller\BIController::class, 'projectEpisodeCurrentProgressInStep_Item'])->middleware(RequestCheck::class);     // BI - 按任务原计划完成环节，统计单集任务进度 单集
Route::post('/bi/v2/project_episodes_step_progress_count_result_list', [app\controller\BIController::class, 'projectEpisodesStepCountResutlList'])->middleware(RequestCheck::class);     // BI - 按任务原计划完成环节，统计单集任务进度 项目包含的所有集
Route::post('/bi/v2/project_episode_stage_list', [app\controller\BIController::class, 'projectEpisodeStageList'])->middleware(RequestCheck::class);     // BI - 统计单集阶段进度
Route::post('/bi/v2/get_open_template_todo_stage_list', [app\controller\BIController::class, 'getOpenTemplateTodoStageList'])->middleware(RequestCheck::class);     // BI - 阶段列表
Route::post('/bi/v2/get_show_step_category_group', [app\controller\BIController::class, 'getShowStepCategoryGroup'])->middleware(RequestCheck::class);     // BI - 项目环节及其工序汇总列表
Route::post('/bi/v2/query_stepcategory_workflow_template_step_list', [app\controller\BIController::class, 'queryStepCategoryWorkflowTemplatesStepList'])->middleware(RequestCheck::class);     // BI - 查询分类的工序任务模板列表
Route::post('/bi/v2/query_stepcategory_steps_upstream_steps', [app\controller\BIController::class, 'queryStepCategoryStepsUpstreamSteps'])->middleware(RequestCheck::class);     // BI - 查询分类的工序任务模板列表 + 二级分类 + 分类工序列表 + 工序上游列表
Route::post('/bi/v2/query_stepcategory_steps_downstream_steps', [app\controller\BIController::class, 'queryStepCategoryStepsDownstreamSteps'])->middleware(RequestCheck::class);     // BI - 查询分类的工序任务模板列表 + 二级分类 + 分类工序列表 + 工序下游列表
Route::post('/bi/v2/query_current_stepcategory_effect_task_list', [app\controller\BIController::class, 'queryCurrentStepCategoryEffectTaskList'])->middleware(RequestCheck::class);     // BI - 查询当前集的所处环节分类下有影响问题的的任务数量
Route::post('/task_statistics/user_role_task_count', [app\controller\TaskStatisticsController::class, 'userRoleTaskCount'])->middleware(RequestCheck::class); // 日报 - 导演任务完成情况
Route::group('/delay_order', function () {
    Route::post('/step_category_wait_confirm_count', [app\controller\DelayOrderController::class, 'stepCategoryWaitConfirmCount'])->middleware(RequestCheck::class); // 环节待确认统计
    // 延期单统计 按集-环节统计
    Route::post('/get_delay_order_count', [app\controller\DelayOrderController::class, 'getDelayOrderCount'])->middleware(RequestCheck::class);

}); // 延期单模块
// 工单统计接口
Route::post('/work_order_statistics/work_order_statistics', [app\controller\WorkOrderStatisticsController::class, 'workOrderStatistics'])->middleware(RequestCheck::class); // 工单统计
// Route::disableDefaultRoute();
Route::post('/department/delete_check', [app\controller\DepartmentController::class, 'deleteCheck'])->middleware(RequestCheck::class); // 校验部门是否可删除
Route::post('/overview/statistics', [app\controller\OverviewController::class, 'statistics'])->middleware(RequestCheck::class); // 校验部门是否可删除

Route::post('/task_work_order_reports/get_task_work_order_reports', [app\controller\TaskWorkOrderReportsController::class, 'getTaskWorkOrderReports'])->middleware(RequestCheck::class); //工单报表
Route::post("/task_work_order_reports/count_task_work_order_proportion", [app\controller\TaskWorkOrderReportsController::class, 'countTaskWorkOrderProportion']); //工单占比
Route::post("/task_work_order_reports/count_task_work_order_number_diff_by_status", [app\controller\TaskWorkOrderReportsController::class, 'countTaskWorkOrderNumberDiffByStatus'])->middleware(RequestCheck::class);//统计不同状态下的工单数量
Route::post("/task_work_order_reports/count_task_work_order_by_step_category_id", [app\controller\TaskWorkOrderReportsController::class, 'countTaskWorkOrderByStepCategoryId'])->middleware(RequestCheck::class);//统计不同状态下的工单问题


Route::post('/task_repair_report/get_task_repair_list', [app\controller\TaskRepairReportController::class, 'getTaskRepairList'])->middleware(RequestCheck::class); // 获取任务返修情况
Route::post('/entity_statistics/get_entity_append_demand', [app\controller\EntityStatisticsController::class, 'getEntityAppendDemand'])->middleware(RequestCheck::class); // 获取新增需求数
Route::post('/entity_statistics/get_basic_demand', [app\controller\EntityStatisticsController::class, 'getBasicDemand'])->middleware(RequestCheck::class); // 获取基本量
Route::post('/entity_statistics/get_demand_detail', [app\controller\EntityStatisticsController::class, 'getDemandDetail'])->middleware(RequestCheck::class); // 获取新增需求数
Route::post('/entity_statistics/get_asset_category_count', [app\controller\EntityStatisticsController::class, 'getAssetCategoryCount'])->middleware(RequestCheck::class); // 根据需求单id获取资产分类数
Route::post('/entity_statistics/get_entity_statistics_by_review_feedback_ids', [app\controller\EntityStatisticsController::class, 'getEntityStatisticsByReviewFeedbackIds'])->middleware(RequestCheck::class); // 根据需求单id获取实体id
Route::post('/entity_statistics/get_entity_estimate', [app\controller\EntityStatisticsController::class, 'getEntityEstimate'])->middleware(RequestCheck::class); // 获取实体预估量

Route::post('/original_plan_node/get_history_abnormal_episode_list', [app\controller\OriginalPlanNodeController::class, 'getHistoryAbnormalEpisodeList'])->middleware(RequestCheck::class); // 获取历史存在异常的集数列表，附带异常实体数据统计

